
import {Button,Row,Col,Icon,message,Modal} from 'antd';
import {WeaTab,WeaAuth,WeaAlertPage,WeaLocaleProvider } from 'ecCom';
import {inject, observer} from "mobx-react";
import {toJS} from 'mobx';
import {WeaTableNew} from 'comsMobx';
import * as  Apis from '../../apis/project';
const WeaTable = WeaTableNew.WeaTable;
const getLabel = WeaLocaleProvider.getLabel;

@observer
export default class TaskShare extends React.Component {
  constructor(props) {
    super(props);


  }
  shareCondition = [
    {
        "colSpan": 2,
        "conditionType": "SELECT",
        "domkey": [
            "sharetype"
        ],
        "fieldcol": 18,
        "isQuickSearch": false,
        "label": getLabel(21956, "对象类型"),
        "labelcol": 6,
        "options": [
            {
                "key": "1",
                "selected": true,
                "showname": getLabel(179, "人力资源")
            }, {
                "key": "5",
                "selected": false,
                "showname": getLabel(141, "分部")
            }, {
                "key": "2",
                "selected": false,
                "showname": getLabel(124, "部门")
            }, {
                "key": "11",
                "selected": false,
                "showname": getLabel(6086, "岗位")
            }, {
                "key": "3",
                "selected": false,
                "showname": getLabel(122, "角色")
            }, {
                "key": "4",
                "selected": false,
                "showname": getLabel(1340, "所有人")
            }
        ],
        "viewAttr": 2
    }, {
        "2": [[
            {
                "browserConditionParam": {
                    "completeParams": {},
                    "conditionDataParams": {},
                    "dataParams": {},
                    "destDataParams": {},
                    "hasAddBtn": false,
                    "hasAdvanceSerach": true,
                    "idSeparator": ",",
                    "isAutoComplete": 1,
                    "isDetail": 0,
                    "isMultCheckbox": false,
                    "isSingle": false,
                    "pageSize": 10,
                    "quickSearchName": "",
                    "type": "57",
                    "viewAttr": 3
                },
                "colSpan": 2,
                "conditionType": "BROWSER",
                "domkey": [
                    "relatedshareid"
                ],
                "fieldcol": 18,
                "isQuickSearch": false,
                "label": getLabel(106, "对象"),
                "labelcol": 6,
                "viewAttr": 3
            }
        ], [
            {
                "colSpan": 2,
                "conditionType": "INPUT_INTERVAL",
                "needDefaultValue":false,
                "domkey": [
                    "seclevel",
                    "seclevelMax"
                ],
                "fieldcol": 18,
                "isQuickSearch": false,
                "label": getLabel(683, "安全级别"),
                "labelcol": 6,
                "value": [
                    0,
                    ''
                ],
                "viewAttr": 3
            }
        ], [
            {
                "colSpan": 2,
                "conditionType": "SELECT",
                "domkey": [
                    "sharelevel"
                ],
                "fieldcol": 18,
                "isQuickSearch": false,
                "label": getLabel(385, "权限"),
                "labelcol": 6,
                "options": [
                    {
                        "key": "1",
                        "selected": true,
                        "showname": getLabel(33564, "查看")
                    }, {
                        "key": "2",
                        "selected": false,
                        "showname": getLabel(93, "编辑")
                    }
                ],
                "viewAttr": 2
            }
        ]
        ],
        "5": [[
            {
                "browserConditionParam": {
                    "completeParams": {},
                    "conditionDataParams": {},
                    "dataParams": {},
                    "destDataParams": {},
                    "hasAddBtn": false,
                    "hasAdvanceSerach": true,
                    "idSeparator": ",",
                    "isAutoComplete": 1,
                    "isDetail": 0,
                    "isMultCheckbox": false,
                    "isSingle": false,
                    "pageSize": 10,
                    "quickSearchName": "",
                    "type": "194",
                    "viewAttr": 3
                },
                "colSpan": 2,
                "conditionType": "BROWSER",
                "domkey": [
                    "relatedshareid"
                ],
                "fieldcol": 18,
                "isQuickSearch": false,
                "label": getLabel(106, "对象"),
                "labelcol": 6,
                "value": 3,
                "viewAttr": 2
            }
        ], [
            {
                "colSpan": 2,
                "conditionType": "INPUT_INTERVAL",
                "needDefaultValue":false,
                "domkey": [
                    "seclevel",
                    "seclevelMax"
                ],
                "fieldcol": 18,
                "isQuickSearch": false,
                "label": getLabel(683, "安全级别"),
                "labelcol": 6,
                "value": [
                    0,
                    ''
                ],
                "viewAttr": 3
            }
        ], [
            {
                "colSpan": 2,
                "conditionType": "SELECT",
                "domkey": [
                    "sharelevel"
                ],
                "fieldcol": 18,
                "isQuickSearch": false,
                "label": getLabel(385, "权限"),
                "labelcol": 6,
                "options": [
                    {
                        "key": "1",
                        "selected": true,
                        "showname": getLabel(33564, "查看")
                    }, {
                        "key": "2",
                        "selected": false,
                        "showname": getLabel(93, "编辑")
                    }
                ],
                "viewAttr": 2
            }
        ]
        ],
        "1": [[
            {
                "browserConditionParam": {
                    "completeParams": {},
                    "conditionDataParams": {},
                    "dataParams": {},
                    "destDataParams": {},
                    "hasAddBtn": false,
                    "hasAdvanceSerach": true,
                    "idSeparator": ",",
                    "isAutoComplete": 1,
                    "isDetail": 0,
                    "isMultCheckbox": false,
                    "isSingle": false,
                    "pageSize": 10,
                    "quickSearchName": "",
                    "type": "17",
                    "viewAttr": 3
                },
                "colSpan": 2,
                "conditionType": "BROWSER",
                "domkey": [
                    "relatedshareid"
                ],
                "fieldcol": 18,
                "isQuickSearch": false,
                "label": getLabel(106, "对象"),
                "labelcol": 6,
                "viewAttr": 3
            }
        ], [
            {
                "colSpan": 2,
                "conditionType": "SELECT",
                "domkey": [
                    "sharelevel"
                ],
                "fieldcol": 18,
                "isQuickSearch": false,
                "label": getLabel(385, "权限"),
                "labelcol": 6,
                "options": [
                    {
                        "key": "1",
                        "selected": true,
                        "showname": getLabel(33564, "查看")
                    }, {
                        "key": "2",
                        "selected": false,
                        "showname": getLabel(93, "编辑")
                    }
                ],
                "viewAttr": 2
            }
        ]
        ],
        "11": [[
            {
                "browserConditionParam": {
                    "completeParams": {},
                    "conditionDataParams": {},
                    "dataParams": {},
                    "destDataParams": {},
                    "hasAddBtn": false,
                    "hasAdvanceSerach": true,
                    "idSeparator": ",",
                    "isAutoComplete": 1,
                    "isDetail": 0,
                    "isMultCheckbox": false,
                    "isSingle": false,
                    "pageSize": 10,
                    "quickSearchName": "",
                    "type": "278",
                    "viewAttr": 3
                },
                "colSpan": 2,
                "conditionType": "BROWSER",
                "domkey": [
                    "relatedshareid"
                ],
                "fieldcol": 18,
                "isQuickSearch": false,
                "label": getLabel(106, "对象"),
                "labelcol": 6,
                "viewAttr": 3
            }
        ], [
            {
                "colSpan": 2,
                "conditionType": "SELECT_LINKAGE",
                "domkey": [
                    "joblevel"
                ],
                "fieldcol": 18,
                "isQuickSearch": false,
                "label": getLabel(28169, "岗位级别"),
                "labelcol": 6,
                "options": [
                    {
                        "key": "0",
                        "selected": true,
                        "showname": getLabel(140, "总部")
                    }, {
                        "key": "2",
                        "selected": false,
                        "showname": getLabel(19437, "指定分部")
                    }, {
                        "key": "1",
                        "selected": false,
                        "showname": getLabel(19438, "指定部门")
                    }
                ],
                "selectLinkageDatas": {
                    "1": {
                        "browserConditionParam": {
                            "completeParams": {},
                            "conditionDataParams": {},
                            "dataParams": {},
                            "destDataParams": {},
                            "hasAddBtn": false,
                            "hasAdvanceSerach": true,
                            "idSeparator": ",",
                            "isAutoComplete": 1,
                            "isDetail": 0,
                            "isMultCheckbox": false,
                            "isSingle": false,
                            "pageSize": 10,
                            "quickSearchName": "",
                            "type": "57",
                            "viewAttr": 3
                        },
                        "colSpan": 2,
                        "conditionType": "BROWSER",
                        "domkey": [
                            "jobtitledepartment"
                        ],
                        "fieldcol": 18,
                        "isQuickSearch": false,
                        "label": "",
                        "labelcol": 6,
                        "viewAttr": 3
                    },
                    "2": {
                        "browserConditionParam": {
                            "completeParams": {},
                            "conditionDataParams": {},
                            "dataParams": {},
                            "destDataParams": {},
                            "hasAddBtn": false,
                            "hasAdvanceSerach": true,
                            "idSeparator": ",",
                            "isAutoComplete": 1,
                            "isDetail": 0,
                            "isMultCheckbox": false,
                            "isSingle": false,
                            "pageSize": 10,
                            "quickSearchName": "",
                            "type": "194",
                            "viewAttr": 3
                        },
                        "colSpan": 2,
                        "conditionType": "BROWSER",
                        "domkey": [
                            "jobtitlesubcompany"
                        ],
                        "fieldcol": 18,
                        "isQuickSearch": false,
                        "label": "",
                        "labelcol": 6,
                        "viewAttr": 3
                    }
                },
                "viewAttr": 2
            }
        ], [
            {
                "colSpan": 2,
                "conditionType": "SELECT",
                "domkey": [
                    "sharelevel"
                ],
                "fieldcol": 18,
                "isQuickSearch": false,
                "label": getLabel(385, "权限"),
                "labelcol": 6,
                "options": [
                    {
                        "key": "1",
                        "selected": true,
                        "showname": getLabel(33564, "查看")
                    }, {
                        "key": "2",
                        "selected": false,
                        "showname": getLabel(93, "编辑")
                    }
                ],
                "viewAttr": 2
            }
        ]
        ],
        "4": [[
            {
                "colSpan": 2,
                "conditionType": "INPUT_INTERVAL",
                "needDefaultValue":false,
                "domkey": [
                    "seclevel",
                    "seclevelMax"
                ],
                "fieldcol": 18,
                "isQuickSearch": false,
                "label": getLabel(683, "安全级别"),
                "labelcol": 6,
                "value": [
                    0,
                    ''
                ],
                "viewAttr": 3
            }
        ], [
            {
                "colSpan": 2,
                "conditionType": "SELECT",
                "domkey": [
                    "sharelevel"
                ],
                "fieldcol": 18,
                "isQuickSearch": false,
                "label": getLabel(385, "权限"),
                "labelcol": 6,
                "options": [
                    {
                        "key": "1",
                        "selected": true,
                        "showname": getLabel(33564, "查看")
                    }, {
                        "key": "2",
                        "selected": false,
                        "showname": getLabel(93, "编辑")
                    }
                ],
                "viewAttr": 2
            }
        ]
        ],
        "3": [[
            {
                "browserConditionParam": {
                    "completeParams": {},
                    "conditionDataParams": {},
                    "dataParams": {},
                    "destDataParams": {},
                    "hasAddBtn": false,
                    "hasAdvanceSerach": true,
                    "idSeparator": ",",
                    "isAutoComplete": 1,
                    "isDetail": 0,
                    "isMultCheckbox": false,
                    "isSingle": false,
                    "pageSize": 10,
                    "quickSearchName": "",
                    "type": "65",
                    "viewAttr": 3
                },
                "colSpan": 2,
                "conditionType": "BROWSER",
                "domkey": [
                    "relatedshareid"
                ],
                "fieldcol": 18,
                "isQuickSearch": false,
                "label": getLabel(106, "对象"),
                "labelcol": 6,
                "viewAttr": 3
            }, {
                "colSpan": 2,
                "conditionType": "SELECT",
                "domkey": [
                    "rolelevel"
                ],
                "fieldcol": 18,
                "isQuickSearch": false,
                "label": getLabel(139, "级别"),
                "labelcol": 6,
                "options": [
                    {
                        "key": "0",
                        "selected": true,
                        "showname": getLabel(124, "部门")
                    }, {
                        "key": "1",
                        "selected": false,
                        "showname": getLabel(141, "分部")
                    }, {
                        "key": "2",
                        "selected": false,
                        "showname": getLabel(140, "总部")
                    }
                ],
                "viewAttr": 2
            }
        ], [
            {
                "colSpan": 2,
                "conditionType": "INPUT_INTERVAL",
                "needDefaultValue":false,
                "domkey": [
                    "seclevel",
                    "seclevelMax"
                ],
                "fieldcol": 18,
                "isQuickSearch": false,
                "label": getLabel(683, "安全级别"),
                "labelcol": 6,
                "value": [
                    0,
                    ''
                ],
                "viewAttr": 3
            }
        ], [
            {
                "colSpan": 2,
                "conditionType": "SELECT",
                "domkey": [
                    "sharelevel"
                ],
                "fieldcol": 18,
                "isQuickSearch": false,
                "label": getLabel(385, "权限"),
                "labelcol": 6,
                "options": [
                    {
                        "key": "1",
                        "selected": true,
                        "showname": getLabel(33564, "查看")
                    }, {
                        "key": "2",
                        "selected": false,
                        "showname": getLabel(93, "编辑")
                    }
                ],
                "viewAttr": 2
            }
        ]
        ]
    }
];
  componentDidMount(){
    Apis.getDetachable().then(data=>{
		if(data.appDetachDisableAll){//禁用所有人选项
			let temp =this.shareCondition[0];
			temp.options.splice(5,1);		
            this.shareCondition[0] = temp ;
		}
	});

  }
  componentWillReceiveProps(nextProps) {
 
  }
  render() {
        const {contentStore:{shareTableStore,isShowShare,showAddShareModal,shareRight:{hasRight,verified}},contentStore,title} = this.props;
    
        if (verified && !hasRight) {
            return (<WeaAlertPage ecId={`${this && this.props && this.props.ecId || ''}_WeaAlertPage@hzux0g`} >
                    <div style={{color : '#000'}}>
                        {getLabel(2012,"对不起，您暂时没有权限！")}
                    </div>
                </WeaAlertPage>
            )
        }
        if (verified && hasRight) {
            return (
                <div >
                    <WeaTable ecId={`${this && this.props && this.props.ecId || ''}_WeaTable@vx573t`} 
                        comsWeaTableStore={shareTableStore}
                        hasOrder={true}
                        needScroll={false}
                        onOperatesClick={this.onOperatesClick.bind(this)}
                    />
                    <WeaAuth ecId={`${this && this.props && this.props.ecId || ''}_WeaAuth@un2b30`} 
                        visible={isShowShare}
                        conditions={toJS(this.shareCondition)}
                        title={title}
                        icon={"icon-coms-project"}
                        iconBgcolor="#217346"
                        onOk={v => {
                            contentStore.addShare(v);
                            showAddShareModal(false);
                        }}
                        onCancel={() => {
                            showAddShareModal(false);
                        }}
                    />
            </div>)
        }
        return <div></div>
    }
    
    onOperatesClick=(record,index,operate,flag)=>{
        const {contentStore} = this.props;
        let _href = operate && operate.href ? operate.href : "";
		let fn = _href.replace("javascript:","");
		fn = fn.substring(0,fn.indexOf('('));
        let that = this;
        if(fn != ""){
            if('onDel' == fn){   //删除
                contentStore.delBatchShare(record.id);
            }
        }
    }
}

